home *** CD-ROM | disk | FTP | other *** search
/ Shareware Super Platinum 8 / Shareware Super Platinum 8.iso / mac / MODEMPRO / XH110.ZIP;1 / XHOST.DOC < prev    next >
Encoding:
Text File  |  1994-01-07  |  63.9 KB  |  1,574 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.                    ‹‹   ‹‹  ‹‹   ‹‹                ‹‹
  11.                    fl€‹ ‹€fl  €€   €€                €€
  12.                     fl€‹€fl   €€   €€ €€€€€€ €€€€€ €€€€€€
  13.                      €€€    €€€€€€€ €€  €€ €€‹     €€
  14.                     €€ €€   €€   €€ €€  €€   fl€€   €€
  15.                    €€   €€  €€   €€ €€€€€€ €€€€€   €€
  16.  
  17.                               version 1.10
  18.  
  19.  
  20.                        A Host Mode for Telix 3.15
  21.  
  22.                           by Andras Pattantyus
  23.  
  24.  
  25.  
  26.      CONTENTS:
  27.  
  28.      Introduction
  29.      Disclaimer
  30.      Licence
  31.      Support
  32.      Requirements
  33.      Installation
  34.      Quick Start-Up
  35.      Configuring XHost
  36.      Sysop Keyboard Commands
  37.      Listing of Online Commands
  38.      Access Levels and Security
  39.      The Archive Handling System
  40.      The User Editor
  41.      The Message Editor
  42.      Using PACK.EXE
  43.      Installing Bimodem
  44.      Installing Other External Protocols
  45.      Files Used/Created by XHost
  46.  
  47.      This document is not formatted for printing.
  48.  
  49.  
  50.                               Introduction
  51.                               ƒƒƒƒƒƒƒƒƒƒƒƒ
  52.  
  53.      The big question for any would-be sysop is, of course, why use
  54.      XHost? Here are XHost's major strengths. Keep in mind that it still
  55.      still in its infancy, and more features will be added, according to
  56.      user response.
  57.  
  58.      1) Perhaps the simplest factor: XHost is free. It isn't commercial,
  59.      nor shareware, nor crippleware, nor half-gutted (like some of the
  60.      competition). You get everything there is, for not even a penny.
  61.  
  62.      2) XHost is fast. If you are trying to run Host+ on an XT, enjoy
  63.      the sluggish response to keyboard input. XHost was written on an
  64.      XT, and I hacked away until it worked fast enough. Of course, it
  65.      lacks some of the "sophistication" of Executive Host and Host+. My
  66.      answer to that is some things should be left to real BBS packages,
  67.      not Telix scripts. I don't see the need to push SALT to the limit,
  68.      because invariably performance begins to deteriorate.
  69.  
  70.      3) Well, it's time to roll out all the features. Let's start with
  71.      those that will appeal to high-end expectations:
  72.      - up to 40 conferences (999 will be available once I figure out how
  73.        to efficiently save the users' last read message.)
  74.      - 64k messages per conference
  75.      - Full-screen message editor, with quote mode and message uploading
  76.      - 255 Text files per conference
  77.      - 255 Doors per conference
  78.      - Door formats: DOOR.SYS, DORINFO1.DEF, PCBOARD.SYS, custom ones
  79.      - 255 File directories per conference
  80.      - No built-in limits to file list size
  81.      - Utility to add files to list
  82.      - Completely configurable menu system
  83.      - 256 menus, including global commands
  84.      - Menu editor provided
  85.      - Extensive user records
  86.      - User record editor
  87.      - 255 user levels available, each with own time, byte and ratio
  88.        limit (again, editable)
  89.      - Batch downloads! For internal protocols, 5 files from one
  90.        directory; for external ones, 25 files from any directory.
  91.      - File transfer list can be edited
  92.      - BiModem and HS/Link compatible
  93.      - Upload testing
  94.      - FILE_ID.DIZ importing (supports multi-line descriptions)
  95.      - Compressed file menu: extract, read, list, add files
  96.      - All compressed file formats supported
  97.  
  98.      4) While designing XHost, I also considered the users who don't
  99.      really want to run a BBS, and only need a few of XHost's features.
  100.      This is why I implemented the menu editor, and the following
  101.      options:
  102.  
  103.      - toggle file lists
  104.      - toggle upload testing
  105.      - toggle user records (ie operate like QDHOST in terms of security)
  106.  
  107.      This allows you to set up a simple one-menu system which runs
  108.      nicely, gives you batch transfers and any other feature you feel
  109.      you require. The rest of XHost conveniently disappears.
  110.  
  111.  
  112.  
  113.                                Disclaimer
  114.                                ƒƒƒƒƒƒƒƒƒƒ
  115.  
  116.  
  117.      You use this set of scripts at your own risk. You are advised to
  118.      consult the documentation (RTFM!), or to contact me whenever an
  119.      uncertainty arises. Of course, you should avoid taking unnecessary
  120.      risks when using this software. There is no way that it can be
  121.      guaranteed that this script will work with your particular hardware
  122.      and software setup (although if Telix 3.15 runs, this should run),
  123.      or that it will do what you wish it would. Any dissatisfaction
  124.      should be mentioned to me so that it may be remedied as soon as
  125.      possible. All the scripts have been tested and are hopefully
  126.      bug-free, but some could still have slipped through, especially if
  127.      you are using a beta version of XHost.
  128.  
  129.      Obviously, I, Andras Pattantyus, cannot be held responsible for any
  130.      problems or damages associated with using XHost, and unless you are
  131.      comfortable with that idea, you should not use XHost.
  132.  
  133.  
  134.  
  135.                                 Licence
  136.                                 ƒƒƒƒƒƒƒ
  137.  
  138.      XHost 1.10 is a free program. There are no restrictions attached to
  139.      it, except what is said in the following paragraph.
  140.  
  141.      XHost 1.10 may be freely copied and distributed, as long as it is
  142.      unmodified and all files are present, including all the scripts,
  143.      documentation, and any other files originally in the archive; and
  144.      as long as no charge is levied for distributing XHost. XHost may
  145.      not be distributed with other programs.
  146.  
  147.  
  148.  
  149.                                 Support
  150.                                 ƒƒƒƒƒƒƒ
  151.  
  152.      Getting help or advice for XHost is most easily done by contacting
  153.      me. You are also encouraged (begged!) to forward bug reports and
  154.      suggestions for improvement. Donations for XHost are welcome as
  155.      they will help invest more resources into improving XHost. Anyone
  156.      sending 15$ or more will become a 'registered' user, meaning they
  157.      will receive my undivided attention when asking for help and
  158.      mailed notices of major developments.
  159.  
  160.      I can be reached by:
  161.  
  162.            Writing to 3agp3@qucdn.queensu.ca, which is my Internet
  163.            address.
  164.  
  165.            Writing to ANDRAS PATTANTYUS on the Fidonet Telix Echo.
  166.  
  167.            Calling (613) 549-4914, preferrably around 11:00pm Eastern
  168.            time.
  169.  
  170.            My address is:
  171.                           Brockington House, Room 6
  172.                           Kingston, ON
  173.                           K7L 3X3
  174.                           CANADA
  175.  
  176.      Development has slowed down somewhat due to my studies. Things will
  177.      pick up again in the summer, or as soon as I get a computer for my
  178.      new residence room. This information is valid until May 1994, when
  179.      I'll find out about my summer address.
  180.  
  181.  
  182.  
  183.  
  184.                      Requirements for Running XHost
  185.                      ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
  186.  
  187.      First of all, Telix 3.15 must run on your machine. Then, enough
  188.      disk space must be available for all the script files (roughly
  189.      150k). To run XHost from a single 360k floppy alongside Telix, you
  190.      will have to delete some non-essential scripts: Setup (once it is
  191.      done), ADD.SLC, SORT.SLC, GENP.SLC and possibly EDIT.SLC or
  192.      EDITOR.SLC if you do not need them.
  193.  
  194.      In terms of memory, the more the better, especially if you plan
  195.      on using the remote DOS shell or doors. It will run with about 300k
  196.      free memory, but this does not leave much room for anything else.
  197.      Note that XHost will use DOS commands to perform certain tasks (ie
  198.      clearing the temp directory), so giving it the absolute minimum
  199.      might cause problems. Using Telix 3.20 will solve this problem as
  200.      it allows you to swap to disk/EMS/XMS during a shell.
  201.  
  202.      As for machine speed, XHost was initially written on an XT, so I
  203.      have learned how to squeeze the most out of SALT. However, there is
  204.      a limit to what can be done. The biggest problem is undoubtedly the
  205.      full screen editor, which ran sluggishly on the XT; the speed was
  206.      equivalent to roughly 120 cps. Other areas may also be slow, as I
  207.      now program on a 386-40 :-); nevertheless, speed was always an
  208.      important factor when I designed my procedures and I can say that
  209.      XHost runs faster than all of the other host modes with comparable
  210.      features now available.
  211.  
  212.  
  213.  
  214.                               Installation
  215.                               ƒƒƒƒƒƒƒƒƒƒƒƒ
  216.  
  217.      All files with an SLC extension must be placed inside your script
  218.      directory (defined in Telix, Alt-O F C), and all other files must
  219.      be copied to your XHost data directory (defined in XHost Setup,
  220.      System, XHost directory).
  221.  
  222.      Here's how the files should be distributed:
  223.  
  224.      In script directory:
  225.  
  226.      ADD.SLC        Adds files to FILES.LST in current directory
  227.      DOOR.SLC       Information file converter for doors
  228.      EDIT.SLC       User Editor
  229.      EDITOR.SLC     Message Editor
  230.      GENP.SLC       Generates rejection path list for Bimodem
  231.      README.1ST     Start-up info
  232.      SETUP.SLC      Setup script
  233.      SORT.SLC       Sorts FILES.LST in all directories
  234.      XHOST.SLC      Main host script
  235.      XHOST.DOC      This file
  236.  
  237.      In Telix directory:
  238.  
  239.      PACK.EXE       Data file packer
  240.  
  241.      In XHost data directory:
  242.  
  243.      ARCS.CFG       Archiver configuration file
  244.      BIMOD.ASC      Bimodem help file
  245.      MENU.DEF       Menu definition file
  246.      MENU000.ASC    Sysop menu
  247.      MENU000.ANS
  248.      MENU001.ASC    Main menu
  249.      MENU001.ANS
  250.      MENU002.ASC    File menu
  251.      MENU002.ANS
  252.      MENU003.ASC    Archive viewing menu
  253.      MENU003.ANS
  254.      MENU004.ANS    User setup menu
  255.      MENU004.ASC
  256.      PROTO.ASC      Protocol table
  257.  
  258.      Many more files can be used or will be created by XHost. See FILES
  259.      USED/CREATED BY XHOST for more information.
  260.  
  261.  
  262.                              Quick Start-Up
  263.                              ƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
  264.  
  265.      The following steps are the fastest way to getting XHost to work on
  266.      a system. The first obvious thing is to run SETUP.SLC.
  267.  
  268.      - Fill out System settings.
  269.      - Look at the available options. The default settings will be
  270.        adequate for most people, but it is possible to simplify XHost's
  271.        operation through this menu.
  272.      - Fill out Modem Config.
  273.      - Define at least one conference.
  274.      - Add file directories, text files and doors to the conferences.
  275.      - Define levels 1, 10 and 255 for a new, regular and sysop user,
  276.        respectively.
  277.      - Install any external protocols you wish to use. Read the section
  278.        INSTALLING OTHER EXTERNAL PROTOCOLS.
  279.      - All the other settings will work fine with the default values.
  280.      - Edit ARCS.CFG with a text editor to place the default compressed
  281.        file format first.
  282.      - Edit PROTO.ASC to add the external protocols you use.
  283.      - You might want to create FIRST.ASC and LAST.ASC files for logins
  284.        and logoffs, respectively.
  285.  
  286.      That's it! You are now set to run XHost. Simply press Alt-G in
  287.      Telix and type XHOST, followed by Enter.
  288.  
  289.  
  290.                            Configuring XHost
  291.                            ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
  292.  
  293.      The SETUP script allows you to control most aspects of XHost's
  294.      behaviour. Here is a rundown of all options and their descriptions:
  295.  
  296.  
  297.      UNDER SYSTEM:
  298.      ÕÕÕÕÕÕÕÕÕÕÕÕ
  299.  
  300.         - XHost Directory: The directory which contains all of XHost's
  301.           data files, except the usage log and the user file (which are
  302.           in the Telix directory).
  303.  
  304.         - Temporary Directory: This is used to receive all uploads and
  305.           for archive manipulations. It must be an empty directory (or
  306.           else it will very quickly become one) as it is regularly
  307.           cleared.
  308.  
  309.         - Sysop's Name: The name of the system operator.
  310.  
  311.         - System Name: The name of the system being run.
  312.  
  313.         - System Password: A 12-character string that controls access to
  314.           SETUP and the Sysop menu.
  315.  
  316.      UNDER OPTIONS:
  317.      ÕÕÕÕÕÕÕÕÕÕÕÕÕ
  318.  
  319.         The YES option is explained.
  320.  
  321.         - Capture All Calls:  All calls are captured to XHOST.CAP. Be
  322.           aware that this file will rapidly gain size as all text sent
  323.           to the user will be saved to disk.
  324.  
  325.         - Closed System:  New users are not allowed to register. They
  326.           are shown PRIVATE.ext and then logged off.
  327.  
  328.         - Monitor Call Progress:  The call is displayed to the screen,
  329.           or else the status screen is kept. (The message editor's output
  330.           will always be displayed, and the status screen is restored
  331.           once the user exits the message editor.)
  332.  
  333.         - Exit Telix after Call:  Telix is exited after each caller.
  334.           (useful for front-end mailers)
  335.  
  336.         - Lock Sound ON:  Sound is always ON, regardless of sound hours.
  337.  
  338.         - Lock Sound OFF:  Sound is always OFF, regardless of sound
  339.           hours.
  340.  
  341.         - Allow Aliases:  When registering, the user is asked for
  342.           his/her real name.
  343.  
  344.         - Do NOT Use File Lists:  File descriptions are not required on
  345.           uploads, and obviously filename validation is not done on
  346.           downloads. The raw directory must then be used to list files
  347.           in a directory. Set this to YES if you want a simple Host.
  348.  
  349.         - Do NOT Test Uploads:  Uploads are not tested for errors.
  350.           Otherwise, uploads that fail the test are deleted. (See THE
  351.           ARCHIVE HANDLING SYSTEM section for details on how testing is
  352.           carried out.)
  353.  
  354.         - Do NOT Keep User Records:  This option allows you to forego
  355.           rigorous user records in favour of flexibility. When this is
  356.           ON, the caller is asked to enter a password, and the user
  357.           records are searched for a match. The caller is then assigned
  358.           the level and data that goes along with the password
  359.           (analogously to how Telix's host.slc operates). Ultimately,
  360.           the effect of this option is to render the following data
  361.           fields useless:
  362.  
  363.              Real name, phone number, city, country, bytes left, bytes
  364.              transferred, files transferred, last logon, time left,
  365.              total calls. (See THE USER EDITOR for more details on the
  366.              user file.)
  367.  
  368.           This way several users can call in by knowing one of the
  369.           passwords in the user file. It spares them the hassle of
  370.           registering, etc. and can reduce the user file's size. Note
  371.           that the "Closed System" option is also incapacitated: anyone
  372.           who knows a password can call in. This can also create
  373.           confusion if there is a message base installed, as all users
  374.           logging in with the same password will share the same set of
  375.           last-message-read values.
  376.  
  377.           To use this option, run the user editor to enter a password,
  378.           level and security flags for each record. Note that deleted
  379.           records will still be ignored, and anybody matching a
  380.           blacklisted record's password will be ejected. Finally, the
  381.           ratio should be set to zero for all user levels.
  382.  
  383.         - Sound Hours: The hours at which sound is to come on, and at
  384.           which it is turned off. They can extend past midnight, but
  385.           military (24 hour) time must be used.
  386.  
  387.  
  388.      UNDER MODEM CONFIG:
  389.      ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕ
  390.  
  391.         - Minimum baud:  The minimal baud rate required to access the
  392.           system. This must be a baud rate that Telix can recognise.
  393.  
  394.         - Lock rate? (Y/N): Set this to YES if it is wished that the
  395.           baud rate between Telix and the COM port stays constant (if
  396.           Auto Baud Detect in Telix is Off, then this should be set to
  397.           YES).
  398.  
  399.         - Null Modem? (Y/N): This is used if two machines are connected
  400.           via a Null Modem cable. Carrier checking is not performed, and
  401.           there is no time limit to calls.
  402.  
  403.         - Busy String: This is the string that XHost will send to the
  404.           modem before it starts local mode or a quick logon. By
  405.           default, it is ATS0=0|, which sets auto-answer off on
  406.           Hayes-compatible modems. If you want your modem to pick up the
  407.           line so that callers receive a busy signal, change this to
  408.           ATH1|. Note that a vertical bar (|) is used to indicate a
  409.           carriage return (^M), usually at the end of the init string.
  410.  
  411.  
  412.      UNDER CONFERENCES:
  413.      ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕ
  414.  
  415.         A window with the first conference displayed will appear. XHost
  416.         can use up to 40 conferences. The following commands can be
  417.         used to view the different conferences:
  418.  
  419.         - Escape: Quit
  420.         - Enter: Edit conference
  421.         - PgUp/Dn: Up or down one conference
  422.         - Ctrl-PgUp/Dn: Up or down 10 conferences
  423.         - (+): Add a conference
  424.         - Delete: Blank out current conference
  425.  
  426.        The following fields may be edited:
  427.  
  428.         - Name:  The conference's name.
  429.  
  430.         - Level:  The level required to access the conference.
  431.  
  432.         - Flags:  Flag set required to access the conference (see ACCESS
  433.           LEVELS AND SECURITY).
  434.  
  435.         - Path:  The directory where the conference's data files
  436.           (messages, and directory/text file/door lists) will be kept.
  437.           By default, this is the same as the XHost directory. This
  438.           field was provided for those who install many conferences, and
  439.           would like to keep each one separate from the others.
  440.  
  441.         - Messages? (Y/N):  Whether messages are allowed in this
  442.           conference or not.
  443.  
  444.           Max Messages: The maximum number of messages for the message
  445.                         base (0 = No limit if messages set to "Yes").
  446.  
  447.           Max Days:  The maximum number of days to keep a message
  448.                     (1-255). A 0 keeps messages indefinitely.
  449.  
  450.           Note that PACK.EXE must be run regularly to take advantage of
  451.           these options. See USING PACK.EXE for more details.
  452.  
  453.         - Private? (Y/N):  Only users registered in this conference will
  454.           be able to access it if this is set to Yes.
  455.  
  456.         - File Directories: Hit Enter to edit the list of file
  457.           directories available in this conference.
  458.  
  459.           Editing the directories:
  460.  
  461.           A window displaying the first file directory will appear.
  462.           Its name, path, level and flags required are editable.
  463.  
  464.            - Name: The file directory's description
  465.            - Path: The directory itself
  466.            - Level: Level required to access the directory
  467.            - Flags: Flags required to access the directory
  468.                     (see ACCESS LEVELS AND SECURITY for a description of
  469.                     how flags work).
  470.  
  471.            The following commands are available:
  472.  
  473.                - Escape: Return to conference window
  474.                - Page Up/Down: Display the next/previous directory
  475.                - Control-Page Up/Down: Jump by 10 directories
  476.                - (+):  Add a directory to the end of the list
  477.                - Delete:  Delete the current directory. Note that this
  478.                  does not remove the directory entirely. Instead its
  479.                  name and path are reset, which causes XHost to skip the
  480.                  directory. To entirely remove a directory, use an
  481.                  editor (as explained under Alt-A a bit later on).
  482.                - Enter:  Edit the current directory
  483.                - Alt-A:  *BEWARE!* Load the editor (as it is defined in
  484.                  Telix Config, Alt-O F H) to edit the directory data
  485.                  file. This is tricky because the file's record lengths
  486.                  must be preserved; even though the records are CR/LF
  487.                  delimited, the file is direct access and therefore any
  488.                  improper deletion or insertion will render the data
  489.                  incomprehensible to XHost. The only safe commands are
  490.                  Delete line (Control-Y in most editors) and Duplicate
  491.                  Line (using a block command or F4 in QEdit).
  492.  
  493.                        Use this command to remove or insert records
  494.                  (which cannot be done in any other way). If you are not
  495.                  sure of what to do, then either don't do it or backup
  496.                  and fiddle around until you get it (this part isn't
  497.                  very user friendly). The header of the data file
  498.                  displays the format of each record; you must use the
  499.                  right record type (directory, text file or door) for
  500.                  the current file.
  501.  
  502.         - Text Files: The same commands as in File directories apply.
  503.           Note that a filename entered without any extension (no period
  504.           in filename) will be taken by XHost as a reference to a set of
  505.           .ANS and .ASC files.
  506.  
  507.         - Doors: Again, the same commands apply, except that PATH must
  508.           now be the full path and filename of the program to run. One
  509.           extra command is available: Alt-O, used to access the Door
  510.           Options window.
  511.  
  512.                  Door Options:
  513.  
  514.                   - Params: The parameters to be passed to the
  515.                     program. Note that all programs (except scripts) are
  516.                     executed using the SALT "run" function, and
  517.                     therefore DOS piping/redirection may not be used.
  518.  
  519.                   - Time: The maximum time a user is to spend within the
  520.                     door.
  521.  
  522.                   - Status: This is a set of On/off flags (much like the
  523.                     security flags) which tell XHost how to prepare to
  524.                     run the door.
  525.  
  526.                     Flag Descriptions:
  527.                         1- Script: Tells XHost that the file should
  528.                            be "called" as a script
  529.  
  530.                         2- ANSI Req'd: A user wishing to run this door
  531.                            MUST have ANSI graphics turned ON
  532.  
  533.                         3- DOOR.SYS: A DOOR.SYS file will be generated
  534.                            before the program is run
  535.  
  536.                         4- DORINFO1.DEF: A DORINFO1.DEF file will be
  537.                            generated before the program is run (QBBS
  538.                            doors)
  539.  
  540.                         5- PCBOARD.SYS: A PCBOARD.SYS file will be
  541.                            generated before the program is run (PCBoard
  542.                            14.x doors)
  543.  
  544.                         6- CVT-1.SLC
  545.                         7- CVT-2.SLC
  546.                         8- CVT-3.SLC: These are converters that you may
  547.                         choose to install. Since more than one converter
  548.                         may be used, you can create DOOR.SYS and then
  549.                         convert it to the format of your choice, or use
  550.                         one of the many programs available (ie
  551.                         Doormaster) to do so.
  552.  
  553.  
  554.      UNDER USER LEVELS:
  555.      ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕ
  556.  
  557.         This is where all user levels may be defined, along with the
  558.         time and bytes per day each is allocated, and the ratio the user
  559.         must respect. The ratio is checked against the number of bytes
  560.         downloaded and uploaded. A ratio of 0 disables this checking,
  561.         and otherwise its value indicates the number of bytes a user may
  562.         download for every one that s/he has uploaded.
  563.  
  564.         The current access levels set in the menu definition file should
  565.         be taken into account as this is done (changing the menus'
  566.         access levels is possible using the menu editor). See the
  567.         section titled LISTING OF ONLINE COMMANDS for this information.
  568.  
  569.         The following keys can be used:
  570.  
  571.         - Escape: Quit
  572.         - Page Up/Down: Move up or down a level
  573.         - Control-Page Up/Down: Move up or down by 10 levels
  574.         - Home: Goto level 1
  575.         - End: Goto level 255
  576.         - Insert: insert a level before the current one (level 255 will
  577.           be pushed out)
  578.         - Delete: delete the current level (a new level 255 will be
  579.           created)
  580.         - Enter: Edit the level.
  581.  
  582.  
  583.      UNDER PROTOCOLS:
  584.      ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕ
  585.  
  586.         All the available protocol keys are listed here. The internal
  587.         protocols' characteristics may not be changed, but they can be
  588.         disabled. All external protocol keys entered here must also be
  589.         defined using the same key in Telix's configuration (Alt-O P).
  590.  
  591.         The following columns are displayed:
  592.  
  593.         - Key: The protocol's key, by which it can be selected for use.
  594.  
  595.         - On: Whether the protocol is active or not.
  596.  
  597.         - Batch: Whether the protocol can transfer more than one file at
  598.           a time. This option allows internal protocols to send five
  599.           files from the same directory, and external ones to send 25
  600.           files from any directories.
  601.  
  602.         - External: Whether the protocol is external or not. When a
  603.           configuration is saved, Setup marks all protocols that are not
  604.           included with Telix as external, so it is not necessary to
  605.           change this.
  606.  
  607.         - Bimodem: Whether the protocol can use Bimodem's new-format
  608.           Intercommunications Log. Set this to "Y" if you have Bimodem
  609.           1.24; for an older version, make sure that it does support
  610.           this file format. If your version of Bimodem does not support
  611.           this log file format, then it can still generate a DSZLOG
  612.           file. This amounts to the same thing, except that a user will
  613.           have to describe uploads after the transfer.
  614.  
  615.         Use Escape to exit.
  616.  
  617.         (See INSTALLING BIMODEM and INSTALLING OTHER EXTERNAL PROTOCOLS
  618.         for more details).
  619.  
  620.  
  621.      UNDER MENU EDITOR
  622.      ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕ
  623.  
  624.         The menu editor is used to add, remove and change the menus
  625.         which XHost uses. The XHost distribution archive comes with
  626.         five menus, numbered from 0 to 4: SysOp, Main, Files, Archives
  627.         and Info & Setup.
  628.  
  629.         Use the cursor keys to move the selector around, and press Enter
  630.         on the menu entry that you wish to change. Escape will end
  631.         editing of an entry. The following commands are also available:
  632.  
  633.         - Alt-C: Clear the current menu's contents.
  634.  
  635.         - Alt-N: Use this to change the name of a menu. If a menu's name
  636.                  is blank, XHost will not use it.
  637.  
  638.         - Alt-P: This allows you to load another menu. Pressing Enter
  639.                  will display a list of all menus. Escape may be used to
  640.                  abort menu selection. Typing "G" will load up the
  641.                  global commands menu. Also, entering a NEW (not
  642.                  accessed previously) menu's number will automatically
  643.                  copy to it the current menu's contents.
  644.  
  645.          - F2: This saves the current menu.
  646.  
  647.          - Escape: Quit to main menu.
  648.  
  649.         Menu Commands:
  650.  
  651.           ! = Accepts arguments via Option
  652.           # = Supports access by numbers
  653.  
  654.           1       Send menu                  41 !#   List Files
  655.           2       Goodbye                    42      New Files
  656.           3       Chat                       43      Locate string in FILES.LST
  657.           4       Comment                    44      Upload
  658.           7  !    Goto menu                  45      Download
  659.           9  !    Run script                 46 !#   Raw (DOS) directory
  660.           10      Shut XHost down            47      Add files to list
  661.           11 !#   Text Files                 48      Move file
  662.           12 !#   Doors                      55      Change PW
  663.           14      Read Log                   56      Change default protocol
  664.           15      DOS Command                57      Set scan prompt on/off
  665.           16      Read messages              58      Set conferences to scan
  666.           17      Write message              59      ANSI on/off
  667.           21      List conferences           60      Expert mode on/off
  668.           22  #   Scan conferences           61      Display user info
  669.           23 !#   Join conference            62      Set screen length
  670.           31      Choose archive
  671.           32      Delete from archive
  672.           33      List files in archive
  673.           34      Delete EXTRACT.ext
  674.           35      Extract file
  675.           36      Add to EXTRACT.ext
  676.           37      Type file inside archive
  677.           38      Contents of EXTRACT.ext
  678.  
  679.  
  680.           Notes
  681.           ƒƒƒƒƒ
  682.  
  683.           - Menu 1 is always the first one sent to the user.
  684.  
  685.           - Most commands are described in the LISTING OF ONLINE
  686.             COMMANDS section.
  687.  
  688.           - The Global menu has precedence over all the others.
  689.  
  690.           - "Run script" command requires an option. Then SCRnnn.SLC
  691.             will be run, where nnn is the option. This is admittedly
  692.             somewhat awkward, but it is certainly the easiest method to
  693.             code. Also, a return code of 3 from the script will be
  694.             considered a request to exit to DOS, of 2 to exit to Telix,
  695.             and of 1 to end the call (0 = normal termination).
  696.  
  697.           - "Goto menu" also requires an option. This option indicates
  698.             the menu that will be loaded; note that menu 0 is system
  699.             password-protected.
  700.  
  701.           - "Access by number" refers to accessing an object (ie text
  702.             file, door, file directory) by typing its number. This is
  703.             done by setting the key to '#'. Take for example the
  704.             following menu entry:
  705.  
  706.             Key: #  Level: 1  Flags: 0  Command: 41  Option: 0
  707.  
  708.             To list a file directory (command 41), the user would have
  709.             to enter its number: 1 to list the first one, 2 to list the
  710.             second, etc. This can also be done with the raw dir, text
  711.             files, doors and conferences. Entering here an option
  712.             different from 0 would cause the file directory of the same
  713.             number as option to be displayed no matter which number was
  714.             entered.
  715.  
  716.           - Due to the way XHost processes the menus, keys may be
  717.             repeated within a menu. However, XHost will only find the
  718.             first matching key that the user has access to; therefore
  719.             this is useful to execute different commands for different
  720.             user levels. For example:
  721.  
  722.             Key: T  Level: 10  Flags: 0  Command: 7  Option: 5
  723.             Key: T  Level: 5   Flags: 0  Command: 7  Option: 6
  724.  
  725.             This would make all users with a level greater than 10 who
  726.             to go to menu 5. Users with a level >= 5 and less than 10
  727.             would be sent to menu 6. All other users who type 'T' would
  728.             be told that they had entered a bad command.
  729.  
  730.  
  731.  
  732.      SAVE AND EXIT:
  733.      ÕÕÕÕÕÕÕÕÕÕÕÕÕ
  734.  
  735.         Does Precisely that. This saves the following data:
  736.  
  737.             Paths and names, options, modem settings, maximum number of
  738.             conferences, level checks, protocols.
  739.  
  740.         Directories, text files, doors must be saved with F2 before
  741.         leaving their window. The same applies to conferences, user
  742.         levels and the menu editor.
  743.  
  744.         Note that pressing Escape from the first menu causes SETUP to end
  745.         without any changes being saved.
  746.  
  747.  
  748.  
  749.  
  750.                         Sysop Keyboard Commands
  751.                         ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
  752.  
  753.         The following commands are available at all times except when
  754.         the user is in the editor.
  755.  
  756.          - Alt-A: Loads the user editor after saving the current user's
  757.                   record. The user's data will be reloaded after.
  758.          - Alt-D: Toggles the display on/off
  759.          - Alt-F: Presents Telix's DOS Function menu.
  760.          - Alt-S: Toggles the sound on/off
  761.          - Alt-X: Hangs up on the user, and exits XHost.
  762.          - Alt-Z: Cycles through the various help/info screens.
  763.  
  764.         These commands can be used when a user is online:
  765.  
  766.          - +/-:   Lowers or raises the current user's access Level.
  767.          - PgUp/PgDn: Lowers or raises the current user's time by 5
  768.                       minutes.
  769.          * Note: Changes made to a user's access level and time left
  770.                  will be saved to the user's record.
  771.  
  772.          - Alt-E: Toggles echo on/off. This is used to suspend output to
  773.                   the caller.
  774.          - Alt-H: Hangs up on the user, and returns to the status
  775.                   screen.
  776.          - Alt-Y: Chats with current user.
  777.  
  778.         These commands are available only at the status screen:
  779.  
  780.          - Alt-O: Run the Setup script. Note that XHost must be
  781.            restarted for any changes in the System, Options, Modem or
  782.            Protocol section to take effect.
  783.  
  784.          - L: Start local test mode. This simulates a logon by a caller.
  785.            Note that file transfers (obviously) will not work
  786.            properly.
  787.  
  788.          - Q: Quick logon. This allows a local logon by simply entering
  789.            the system password. If the sysop's name is found in the user
  790.            file, then the appropriate record is used. Otherwise (if the
  791.            sysop's name is not on the list, if the system does not keep
  792.            user records), a "sysop" user will be generated; this,
  793.            however, will not work with doors (unless it does not require
  794.            any info file) as no actual user record exists, and the door
  795.            converter requires one. The initial menu is menu 0, which is
  796.            the sysop menu in the default configuration.
  797.  
  798.  
  799.  
  800.                        Listing of Online Commands
  801.                        ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
  802.  
  803.         This is a listing of the default menus and a short explanation
  804.         of each command.
  805.  
  806.         Note: 1) Commands can be stacked from almost any prompt; ie:
  807.         f v s xh102b.zip will go from the main menu to the archive menu
  808.         and select XH102B.ZIP.
  809.               2) Some commands are not included in the default menus.
  810.         That is, they can be used but do not appear in the MENUnnn.ext
  811.         files. These are marked with an asterisk.
  812.  
  813.         Format: Command, Key, Level, Security Flags
  814.  
  815.         GLOBAL COMMANDS
  816.         ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕ
  817.  
  818.         Expert Mode, X, 1, 0
  819.         - Toggles expert mode on and off (whether the current menu is
  820.           sent before every command prompt or not)
  821.  
  822.         Goodbye, G, 1, 0
  823.         - Displays LAST.ext and logs off user
  824.  
  825.         Send Menu, ?, 1, 0
  826.         - Shows current menu to user. This also reloads the MENU.DEF
  827.           file, so this must be used after a level change before any new
  828.           commands can be accessed.
  829.  
  830.         Yell, Y, 1, 0
  831.         - Attempts to page the system operator
  832.  
  833.  
  834.         SYSOP MENU   (Need Flag 1 and system pw to access)
  835.         ÕÕÕÕÕÕÕÕÕÕ
  836.  
  837.         Add to File list, F, 1, 1
  838.         - In local mode, runs the ADD scripts to add files to a file
  839.           list. For remote callers, it allows the same to be done via a
  840.           simpler interface.
  841.  
  842.         DOS Shell, D, 1, 1
  843.         - Allows a DOS Shell or a DOS Command to be executed. For DOS
  844.           Shell, a SHELL.BAT file is first searched for, and one is
  845.           created if it is not found.
  846.  
  847.           Note that DOS 5 is needed to use XHost's built-in shell
  848.           procedures for COM 3 and 4 (there is no easy way to test for
  849.           DOS 5's presence). The COMSPEC system variable needs to be set
  850.           (ie have SET COMSPEC=C:\COMMAND.COM, or whatever your command
  851.           interpreter is, in your AUTOEXEC.BAT file) for XHost's batch
  852.           file to work. Also, running a program remotely is next to
  853.           impossible unless a redirection program, such as DOORWAY, is
  854.           used to channel I/O through the system's COM ports. It is
  855.           highly recommended for effective DOS shelling. Users will also
  856.           find that the system will leave little memory available to a
  857.           DOS shell, due to the fact that Telix and XHost take up a good
  858.           chunk of it. This can be fixed by using an external program,
  859.           such as SHROOM, to unload Telix from memory before the shell.
  860.           Telix 3.20 also fixes this problem by swapping itself to disk,
  861.           EMS or XMS. (SHROOM and DOORWAY are shareware, copyright owned
  862.           by their authors, and should be available on any major BBS.)
  863.  
  864.         Move File, M, 1, 1
  865.         - Moves a file and its description (if available) from one file
  866.           directory to another. The description and the file are
  867.           copied to the new directory, then PACK /F [path] is used to
  868.           remove the old description.
  869.  
  870.         Read Log, R, 1, 1
  871.         - Displays the usage log (XHOST.LOG in the Telix directory).
  872.  
  873.         Shut Down, S, 1, 1
  874.         - Allows termination of XHost script and exit from Telix.
  875.  
  876.  
  877.         MAIN MENU
  878.         ÕÕÕÕÕÕÕÕÕ
  879.  
  880.         ANSI Mode, A, 1, 0
  881.         - This sets whether ANSI colour codes will be sent or not to the
  882.           user.
  883.  
  884.         Comment, C, 1, 0
  885.         - This allows the user to enter a private message to the system
  886.           operator. It is saved in conference 1, even if conference 1
  887.           does not allow messages.
  888.  
  889.         Doors, D, 10, 0
  890.         - The Door menu. If DOORS.ext is found in the data directory,
  891.           it is displayed. Otherwise, XHost generates a list of all
  892.           available (ie that the user has appropriate access to)
  893.           doors. A door is run by entering its number.
  894.  
  895.         File Menu, F, 10, 0
  896.         - This loads up the File Menu (002).
  897.  
  898.         Info Menu, I, 1, 0
  899.         - This brings up the Info & Setup menu (004).
  900.  
  901.         List Conferences, L, 5, 0
  902.         - This displays a list of all the conferences the user has
  903.           access to, unless CONFS.ext is found in the host directory,
  904.           in which case it is sent instead.
  905.  
  906.         Read Messages, R, 5, 0
  907.         - This allows the user to read messages in conferences
  908.           with messages (as defined in Setup). The following subcommands
  909.           are available to all users:
  910.  
  911.               (+) read forward
  912.               (-) read backward
  913.               (1-65536) jump to another message
  914.               (Enter) read the next message
  915.  
  916.               (A) read the same message again
  917.               (C) read messages non-stop
  918.               (J) join a conference
  919.               (L) set the last message read
  920.               (Q) quit reading messages
  921.               (R) reply to the current message
  922.               (S) scan conferences for messages
  923.               (W) write a new message
  924.  
  925.           The system will always start reading at the newest message. If
  926.           no new messages exist, the user must specify a message number
  927.           to start at; (+) and (-) cannot be used at that point.
  928.  
  929.           If the current message if to or from the user (or the user has
  930.           the co-sysop flag [2]), then one extra command can be used:
  931.  
  932.               (E) edit the message's header. The user who wrote the
  933.                   message can change the "To", "Subject", "Private" and
  934.                   "Deleted" fields. The receiver may only change the
  935.                   last two.
  936.  
  937.         Scan Conferences, S, 5, 0
  938.         - This command has two modes: one is a quick scan, which
  939.           displays the number of new messages in the conferences the
  940.           user has selected to scan, the other allowing the user to also
  941.           read these new messages before proceeding to the next
  942.           conference.
  943.  
  944.         Switch Conference, Conference's number, 5, 0
  945.         - This allows the user to join another conference, as long as
  946.           s/he has access to the new conference.
  947.  
  948.         Text Files, T, 5, 0
  949.         - This brings the user to the Text File Menu. At this point,
  950.           XHost first checks for the presence of TXTFILES.ext in the
  951.           data directory; if it is not found, it generates a list of all
  952.           defined text files available to the user. It is also possible
  953.           to view any accessible text file from this menu (a text
  954.           file in any one of the directories available to the user). A
  955.           text file can be displayed by typing its number (or name, if
  956.           it is in a directory). As always, numbers and names can be
  957.           stacked. For example, to show files 1, 2, and 5, one can enter
  958.           "1 2 5". To display any one of them continuously, type a "c"
  959.           (for continuous) after its designator: "1 c 2 5" will display
  960.           the first text file non-stop and pause at each page for the
  961.           others.
  962.  
  963.         Write Message, W, 5, 0
  964.         - This allows the user to write a message in the current
  965.           conference (if it allows messages). The default receiver is
  966.           "All". Message entry may be aborted by entering a blank
  967.           subject.
  968.  
  969.       * Sysop Menu, Z, 1, 1
  970.         - This loads up the sysop menu. The system password is required;
  971.           if is not defined, a blank system password allows access to
  972.           this menu.
  973.  
  974.  
  975.  
  976.         FILE MENU   (level 10)
  977.         ÕÕÕÕÕÕÕÕÕ
  978.  
  979.       * Add files, A, 10, 2
  980.         - This command allows a co-sysop (flag 2) to update the file
  981.           list in any directory that s/he has access to. The ADD script
  982.           will be run for local callers, and XHost will use a simpler
  983.           interface for remote callers.
  984.  
  985.         Download, D, 10, 0
  986.         - This allows the user to transfer one or more files from the
  987.           host system to the remote system. Internal protocols may be
  988.           used to transfer up to five files from one directory, while
  989.           external batch protocols are allowed to transfer up to 25.
  990.  
  991.           If only a filename is entered, it is searched for in all the
  992.           directories of the current conference that the user has access
  993.           to. Unless the user has the level required to bypass the file
  994.           list (or the system runs without file lists), every match is
  995.           checked for presence on the file list.
  996.  
  997.           A user with access to any path can enter a filename and path
  998.           on downloads. Note that file list checking is still in effect
  999.           (for users without the required level), even if the path is
  1000.           not defined within the conference.
  1001.  
  1002.           Finally, the user must have enough time and bytes available
  1003.           for each file; the download/upload ratio must also be
  1004.           respected (XHost will not allow a user to exceed his/her
  1005.           allotted ratio).
  1006.  
  1007.           The user also can manipulate the transfer list using the
  1008.           following commands, which are entered at the "File nn:"
  1009.           prompt:
  1010.  
  1011.              (L) list all files to be transferred.
  1012.              (D) delete a file from the list.
  1013.              (S) display transfer statistics.
  1014.  
  1015.           Once file selection has ended, the user may start, abort,
  1016.           continue the list (if applicable; ie batch protocols only), or
  1017.           ask XHost to hangup after the transfer.
  1018.  
  1019.         List Files, File directory's number, 10, 0
  1020.         - This allows the user to view the file list for each directory.
  1021.           At the "Which file directory" prompt, a "?" (question mark)
  1022.           will display a list of available file directories, or the file
  1023.           FDIRS.ext if it exists.
  1024.  
  1025.         New Files, N, 10, 0
  1026.         - This will search all the available directories in the current
  1027.           conference for files which have been uploaded after the user's
  1028.           last call.
  1029.  
  1030.         Raw Directory, R, 20, 0
  1031.         - This allows the user to view the DOS directory of any
  1032.           accessible file directory (Telix's "show_directory" command).
  1033.  
  1034.         Search File List, S, 10, 0
  1035.         - This allows the user to search all the accessible file
  1036.           directories in the current conference for a text string. ANY
  1037.           field may be searched (name, size, date, and description).
  1038.  
  1039.         Text Files, T, 10, 0
  1040.         - This brings the user to the Text File viewer.
  1041.  
  1042.         Upload, U, 10, 0
  1043.         - This allows the user to send files to the system. All
  1044.           directories of the current conference are searched to ensure
  1045.           that duplication does not occur.
  1046.  
  1047.           All files are received into the temporary directory. XHost
  1048.           then processes each received file by searching for duplicates,
  1049.           and then by running the test routine corresponding to the
  1050.           file's archive extension (if upload testing is not disabled).
  1051.  
  1052.         View Archive, V, 10, 0
  1053.         - This loads up the Archive Menu (003).
  1054.  
  1055.  
  1056.         ARCHIVE MENU  (level 10)
  1057.         ÕÕÕÕÕÕÕÕÕÕÕÕ
  1058.  
  1059.         Select Archive, S, 10, 0
  1060.         - This is is used to select the archive that is to be
  1061.           manipulated. All directories of the current conference are
  1062.           searched, wildcards are accepted (though only the first match
  1063.           will be processed), and full paths may be specified by users
  1064.           who have the required access levels.
  1065.  
  1066.       * Add to Archive, A, 10, 1
  1067.         - This allows the sysop to add any file in one of the
  1068.           directories or any path to the EXTRACT compressed file.
  1069.  
  1070.         Contents of EXTRACT, C, 10, 0
  1071.         - This lists the contents of EXTRACT.
  1072.  
  1073.         Delete in Archive, D, 10, 0
  1074.         - This allows the user to delete a file from EXTRACT. Wildcards
  1075.           are allowed.
  1076.  
  1077.         Extract, E, 10, 0
  1078.         - This will extract the specified file(s) from the selected
  1079.           archive and add them to EXTRACT. EXTRACT.arc is created in the
  1080.           second file directory of the current conference, where it is
  1081.           assumed that the user can access it.
  1082.  
  1083.         Kill EXTRACT, K, 10, 0
  1084.         - This will delete the EXTRACT file.
  1085.  
  1086.         List Archive, L, 10, 0
  1087.         - This lists the files in the selected archive.
  1088.  
  1089.         Type in Archive, T, 10, 0
  1090.         - This allows the user to view a text file within the selected
  1091.           archive.
  1092.  
  1093.  
  1094.         INFO & SETUP MENU
  1095.         ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕ
  1096.  
  1097.         Change Password, P, 1, 0
  1098.         - This allows the user to change the password they use on the
  1099.           system.
  1100.  
  1101.         Default Protocol, D, 1, 0
  1102.         - This allows the user to change the protocol used for
  1103.           transfers. If the protocol is set to "N" (for none), the user
  1104.           must choose a protocol before each transfer.
  1105.  
  1106.         Height of Screen, H, 1, 0
  1107.         - This changes the number of lines after which the system sends
  1108.         a "More? (Y)es, (n)o, (c)ontinuous:" prompt. Setting this to
  1109.         zero disables these pauses.
  1110.  
  1111.         List Info, L, 1, 0
  1112.         - This displays information on the user.
  1113.  
  1114.         Scan Conferences upon logon, T, 1, 0
  1115.         - This allows the user to toggle whether s/he wants to scan
  1116.           the conferences that s/he selected right after loggin on.
  1117.  
  1118.         Select Conferences to Scan, S, 1, 0
  1119.         - This allows the user to select the conferences to scan when
  1120.           the "Scan" command is used.
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.                        Access Levels and Security
  1127.                        ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
  1128.  
  1129.      There are two variables which control a user's access to any
  1130.      function within XHost: the access level and the security flags.
  1131.      While the former is easily understood, the latter may need to be
  1132.      clarified for some. The security flags are a set of eight bits
  1133.      (either on or off), and a function is available to the caller only
  1134.      if all the function's flags are present in the caller's set.
  1135.  
  1136.      For example:
  1137.  
  1138.        if John D. has flags 01100100
  1139.           and dir 1 has     01000000
  1140.        then John D. has access to dir 1.
  1141.  
  1142.        If dir 1 has         11100100
  1143.        then John D. is not be able to use it.
  1144.  
  1145.      Also, the first flag (starting from the left) is the Sysop flag,
  1146.      while the second one marks the co-sysop; the rest of the flags can
  1147.      be used for any purpose. A user with the co-sysop flag can
  1148.      extract from an archive into any directory, read private messages
  1149.      (except those addressed to "SYSOP" or the Sysop's name), and change
  1150.      any message's status, receiver and subject.
  1151.  
  1152.      Security flags have one purpose: to make special designation
  1153.      independent of access level. Therefore, any user can be a sysop or
  1154.      co-sysop, regardless of their access level. One also could, for
  1155.      example, define the third flag as the "Adult" flag, and set it to 1
  1156.      on all conferences and file directories which only adults should
  1157.      have access to. Then only users with this third flag also set to 1
  1158.      (hopefully all adults) would be able to access them.
  1159.  
  1160.  
  1161.  
  1162.                       The Archive Handling System
  1163.                       ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
  1164.  
  1165.      XHost is designed to handle any archive type that the system
  1166.      operator wishes to use, and any number of different types. This is
  1167.      because all archive type information is stored in ARCS.CFG in the
  1168.      XHost data directory. The format is as follows:
  1169.  
  1170.      .[Extension]
  1171.      [List command]
  1172.      [Extract]
  1173.      [Add]
  1174.      [Delete]
  1175.      [Test]
  1176.      .[Next Extension]
  1177.      ...
  1178.  
  1179.      as in:
  1180.  
  1181.      .ARJ
  1182.      ARJ l -y %1 %2
  1183.      ARJ e -y %1 %2
  1184.      ARJ a -y %1 %2
  1185.      ARJ d -y %1 %2
  1186.      ARJ t -y %1 %2
  1187.  
  1188.      It is a CR/LF delimited text file. The first line for an archive
  1189.      type is its extension. Following are the commands to list the
  1190.      contents, extract from, add to, delete from, and test the archive.
  1191.      This can continue until all archive types have been defined. Note,
  1192.      however, that accessing this file can be extremely slow on
  1193.      XT computers, so it should not be made too large. The
  1194.      parameters "%1" and "%2" represent the archive and the secondary
  1195.      filespec. All of the commands are called using the SALT "run"
  1196.      function, except for archive list, which necessitates the "dos"
  1197.      function, since %2 is replaced by a DOS redirection in order to
  1198.      capture the archiver's ouput.
  1199.  
  1200.      XHost already comes with four defined types: ARJ, ZIP, LZH and ARC.
  1201.      The first defined type is taken to be the default type: it is used
  1202.      as default extension for filenames and to create the EXTRACT file.
  1203.  
  1204.      The transfer system will test uploaded archives if that option is
  1205.      enabled in Setup. There are three possibilities:
  1206.  
  1207.      1- File's extension not found in ARCS.CFG: File cannot be tested
  1208.         but is still accepted.
  1209.      2- Test command returns -1: Archiver was not found or not enough
  1210.         memory was available to load it. XHost will say "File could not
  1211.         be tested" and it is still accepted.
  1212.      3- Test command returns a value greater than 0: Test is assumed to
  1213.         have failed, and archive is deleted.
  1214.      4- Test command returns 0: Archive has no errors, and is accepted
  1215.         as an upload.
  1216.  
  1217.  
  1218.  
  1219.                             The User Editor
  1220.                             ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
  1221.  
  1222.      The EDIT.SLC script allows the editing of individual user records.
  1223.      Each user record contains the following information:
  1224.  
  1225.         Status character, alias, password, level, security flags, real
  1226.         name, area code and phone number, city and state, country, page
  1227.         length, transfer protocol, bytes available for downloading,
  1228.         uploaded bytes, downloaded bytes, uploaded files, downloaded
  1229.         files, time of last logon, time left for today, total number of
  1230.         calls, comment, scanned conferences, registered conferences,
  1231.         last message read for all conferences.
  1232.  
  1233.      Not all the data can be edited, but most relevant fields are
  1234.      accessible. The more adventurous can always use a sector editor for
  1235.      the remaining data fields.
  1236.  
  1237.      The user editor has a user list on the left-hand side and the data
  1238.      corresponding to the highlighted user displayed on the right. The
  1239.      editor can access the first 200 users on file.
  1240.  
  1241.      The following commands are valid while in the user list:
  1242.  
  1243.      Esc: Quit the user editor.
  1244.      Tab or Right: Edit highlighted user.
  1245.      S: Search for a string in the users' names.
  1246.      Del: Delete the current user. This only sets his DELETED status
  1247.           flag. PACK.EXE must be run to completely remove a record.
  1248.      A: Add a user.
  1249.      Up: Previous user.
  1250.      Down: Next user.
  1251.      Home: First User.
  1252.      End: Last User.
  1253.      PgUp: Up 20 users.
  1254.      PgDn: Down 20 users.
  1255.  
  1256.      Editing a user:
  1257.  
  1258.      Esc: Cancel edit, return to user list.
  1259.      F1: Help on editing keys.
  1260.      F2: Save current user, return to user list.
  1261.      Up, Down: Change fields.
  1262.  
  1263.      Status Flags:
  1264.  
  1265.      (1=On 0=Off)
  1266.      1: Deleted flag. The record cannot be accessed, and PACK will remove
  1267.         the user on its next run.
  1268.      2: KickOut. Blacklisted user.
  1269.      3: Scan Msgs. This is the scan-upon-logon flag.
  1270.      4: Expert mode flag.
  1271.      5: Color. ANSI mode on/off.
  1272.      7: Capture. Everything sent/received is saved to file.
  1273.  
  1274.      Security Flags:
  1275.  
  1276.      1: Sysop
  1277.      2: Co-sysop
  1278.      3-8: Definable
  1279.  
  1280.  
  1281.  
  1282.  
  1283.                            The Message Editor
  1284.                            ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
  1285.  
  1286.      The message editor provided with XHost can operate as a full screen
  1287.      ANSI editor or as a line editor. Word-wrapping is always in effect;
  1288.      the maximum line length is 72 characters per line, and up to 99
  1289.      lines may be used. It currently displays 22 lines of the message
  1290.      per screen.
  1291.  
  1292.      The full screen editor uses ANSI codes to scroll, insert and
  1293.      delete text. This enables it to be much faster than other editors,
  1294.      which constantly need to redraw the current line or part of the
  1295.      screen in order to insert and delete text.
  1296.  
  1297.      The full screen mode provides the following options:
  1298.  
  1299.      - Cursor keys: edit a line and change lines.
  1300.      - Control-D: cursor right
  1301.      - Control-E: cursor up
  1302.      - Control-S: cursor left
  1303.      - Control-X: cursor down
  1304.      - Control-C: page down
  1305.      - Control-R: page up
  1306.      - Control-U: upload message (using ASCII protocol). It will pasted
  1307.                   into the message from the current line on.
  1308.      - Control-O: quote from original message (if replying)
  1309.      - Control-V: toggle insert mode
  1310.      - Control-Y: delete line
  1311.      - Control-Z: displays a short help screen
  1312.  
  1313.      - Escape: message menu (where the user can save, quit, continue,
  1314.                use the full screen editor, edit a line, insert a line,
  1315.                delete a line).
  1316.  
  1317.      The quote function (Ctrl-O) inserts the selected lines at the next
  1318.      line in the text. All quoted text is preceded by "> ".
  1319.  
  1320.  
  1321.                              Using PACK.EXE
  1322.                              ƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
  1323.  
  1324.      PACK is the program that will remove superfluous data from XHost's
  1325.      data files. It will:
  1326.  
  1327.           remove received private and deleted messages;
  1328.           remove old messages;
  1329.           trim a message base to its correct size;
  1330.           remove inexistant files from FILES.LST in the directories;
  1331.           pack the LEVELS.DAT file;
  1332.           and pack the USERS.DAT file.
  1333.  
  1334.      PACK's command line can be:
  1335.  
  1336.      User file:      PACK /U telixdir
  1337.                      ex: PACK /U C:\TELIX
  1338.  
  1339.      Level file:     PACK /L hostdir
  1340.                      ex: PACK /L C:\TELIX\HOST
  1341.  
  1342.      Message bases:  PACK /M[conf#] hostdir
  1343.                           /M0 hostdir  to pack all message bases
  1344.                      ex: PACK /M2 C:\TELIX\HOST
  1345.  
  1346.      File lists:     PACK /F filedir
  1347.                           /F0 hostdir  to pack all file lists
  1348.                      ex: PACK /F C:\FILES
  1349.  
  1350.      Note that only one option may be used at a time. To perform ALL of
  1351.      the above operations, use:
  1352.  
  1353.      PACK telixdir hostdir   as in PACK C:\TELIX C:\TELIX\HOST
  1354.  
  1355.      which will pack the user file, the level file, all conferences
  1356.      which have messages, and all the file directories of each
  1357.      conference.
  1358.  
  1359.  
  1360.                            Installing Bimodem
  1361.                            ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
  1362.  
  1363.      XHost can use most of Bimodem's features, but installation is
  1364.      somewhat complicated. The batch files defined in Telix under
  1365.      external protocols can be only be used if the caller is uploading
  1366.      (ie sending to the host); for downloads, XHost will call the batch
  1367.      file HBIMOD.BAT which must reside in the Telix directory (or one
  1368.      included in the system's PATH).
  1369.  
  1370.      It might be practical to have a two Telix configuration file: one
  1371.      for normal use, and another with the modifications that XHost
  1372.      needs.
  1373.  
  1374.      Step 1: Install Bimodem in Telix (Alt-O P A/B/C/D)
  1375.  
  1376.              Set "download name" to HBIMOD, and "Bat or Script" to Bat.
  1377.              "Upload name" is the name of your batch/file script for
  1378.              uploads. Fill in the remaining fields, and set "ask for
  1379.              download name" to No.
  1380.  
  1381.      Step 2: Install Bimodem in XHost (XHost Setup, Option 6)
  1382.  
  1383.              Go to the first blank key, and enter THE SAME KEY that
  1384.              you entered in the Telix config. Set all other fields to
  1385.              "Y". It would also be practical to include it in the
  1386.              protocol menu (PROTO.ASC and PROTO.ANS).
  1387.  
  1388.      Step 3: Create HBIMOD.BAT in your Telix directory.
  1389.  
  1390.              Use your favourite editor to create this batch file, which
  1391.              will be used for downloads and uploads. It must:
  1392.  
  1393.              1 - change to correct drive and directory
  1394.              2 - run Bimodem with the necessary command line parameters.
  1395.  
  1396.                For example:
  1397.  
  1398.                C:
  1399.                CD\BIMOD
  1400.                BIMODEM /IC:\TEMP\BIMOD.LOG /U@C:\TEMP\FILES.LST %3
  1401.  
  1402.                - replace C:\TEMP with the path to the temp directory
  1403.                - %3 will become /Snnn /Tnnn, the time and byte limits
  1404.                  for Bimodem (passed by XHost) - you may wish to use
  1405.                  /L%1 and /B%2 to set the com port and baud rate.
  1406.                - Notes: If you don't care about statistics, the
  1407.                  /IC:\TEMP\BIMOD.LOG can be left out; otherwise it must
  1408.                  be named BIMOD.LOG and be in the temporary directory.
  1409.                  Also, the /I option may not be available for copies of
  1410.                  Bimodem that are older than v1.24. If such is the case,
  1411.                  then use SET DSZLOG=[filename] instead, as described
  1412.                  in INSTALLING OTHER EXTERNAL PROTOCOLS.
  1413.  
  1414.      Step 4: Configure Bimodem using BiMenu
  1415.  
  1416.      -> under filenames & paths:
  1417.  
  1418.         Rejection path: C:\TELIX\APATHS.LST
  1419.         - This file needs to be created once (use the provided GENP
  1420.         utility). It contains all the directories Bimodem will search
  1421.         search before accepting an upload, and it may reside in any
  1422.         valid directory (though GENP will create it in your Telix
  1423.         directory).
  1424.  
  1425.         Send paths:     C:\TEMP\PATHS.LST
  1426.         - This file will be created each time Bimodem is run to reflect
  1427.         the directories that the current user has access to. It is
  1428.         always created inside your temporary directory. If the user
  1429.         cannot bypass FILES.LST, then this file contains nothing, and
  1430.         the user is limited to what was entered within XHost at the file
  1431.         prompt. Otherwise, the user is free to add as many transfers as
  1432.         will fit into the time and byte limit set on the command line by
  1433.         XHost (the user may accomplish this by either adding downloads
  1434.         to his .PTH file before starting the transfer, or by using Alt-A
  1435.         during the transfer with a registered copy of Bimodem).
  1436.  
  1437.         Receive path    C:\TEMP\
  1438.         - Your temporary directory, where XHost expects to find all
  1439.         received files, so that it can move them into the upload file
  1440.         directory after verifying them.
  1441.  
  1442.      -> under general options:
  1443.  
  1444.         YES to Allow Remote Requests (otherwise user will not be able to
  1445.                                       upload)
  1446.         NO  to Allow full path+name (it is risky to leave this as YES)
  1447.  
  1448.  
  1449.  
  1450.                     Installing Other External Protocols
  1451.                     ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
  1452.                           (including HS/Link)
  1453.  
  1454.      XHost supports all external protocols which can write a DSZLOG
  1455.      transfer log file (if statistics are not required, then any
  1456.      protocol will work). Batch protocols MUST be able to process
  1457.      transfer lists as all filenames will be written to a text file in
  1458.      the temporary directory.
  1459.  
  1460.      Step 1: Install Protocol in Telix (Alt-O P A/B/C/D)
  1461.  
  1462.              Fill in all the fields.
  1463.  
  1464.      Step 2: Install Protocol in XHost (XHost Setup, Option 6)
  1465.  
  1466.              Go to the first blank key, and enter THE SAME KEY that
  1467.              you entered in the Telix config. Set all other fields
  1468.              appropriately. You should then add a line in the protocol
  1469.              menu for the one you are now installing.
  1470.  
  1471.      Step 3: Create all batch files/scripts to run protocol
  1472.  
  1473.              Your batch file/script must ensure the following:
  1474.  
  1475.              1 - the protocol puts all received files into your temp
  1476.                  dir. (for uploads)
  1477.  
  1478.              2 - the protocol is given the correct download name.
  1479.                  Batch protocols: @C:\TEMP\FILES.LST, others: %3
  1480.  
  1481.              Sample Batch File to run HS/Link:
  1482.  
  1483.              (Download)
  1484.              CD\HSLINK
  1485.              HSLINK @C:\TEMP\FILES.LST -UC:\TEMP
  1486.  
  1487.              (Upload)
  1488.              CD\HSLINK
  1489.              HSLINK -UC:\TEMP
  1490.  
  1491.             - C:\TEMP must be replaced by your temporary directory's
  1492.               name
  1493.  
  1494.      Step 4: Set DSZLOG if stats are required.
  1495.  
  1496.              The DSZLOG environment variable must be set or else XHost
  1497.              will not be able to properly update the users' statistics
  1498.              or keep an accurate log of system use. The simplest way to
  1499.              do this is to append to your AUTOEXEC.BAT the line:
  1500.  
  1501.              SET DSZLOG=[path][filename]
  1502.              as in
  1503.              SET DSZLOG=C:\TELIX\TRANS.LOG
  1504.  
  1505.  
  1506.  
  1507.                       Files used/created by XHost
  1508.                       ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
  1509.  
  1510.      A .ext extension indicates that the filename with a ANS extension
  1511.      will be displayed to users with ANSI color set to ON, while the ASC
  1512.      version will be sent to others. If the ANSI file is not found, then
  1513.      the text (ASC) file will be sent to all users.
  1514.  
  1515.  
  1516.      in XHost directory:
  1517.      ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕ
  1518.  
  1519.      May be modified using an editor:
  1520.      ARCS.CFG       Archiver configuration file
  1521.      BIMOD.ext      Text file explaining Bimodem procedure to users
  1522.      CONFS.ext      List of all conferences for users
  1523.      FIRST.ext      Logon screen
  1524.      LAST.ext       Logoff screen
  1525.      MENUnnn.ext    Menu screens
  1526.      POLICY.ext     "Policy of the Board" text file
  1527.      PRIVATE.ext    Text file to new users for closed systems
  1528.      PROTO.ext      List of transfer protocols
  1529.  
  1530.      Use Setup to modify these:
  1531.      CONFS.DAT      Conference data file
  1532.      LEVELS.DAT     Levels data file
  1533.      MENU.DEF       Menu definition file
  1534.  
  1535.      XHOST.CAP      Capture file if all calls are to be captured
  1536.      *.CAP          Capture file for one particular user, with *
  1537.                     representing the user's name (first eight
  1538.                     characters, blanks replaced by underscores).
  1539.  
  1540.  
  1541.      In the conference's path:
  1542.      ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕ
  1543.  
  1544.      DIRnnn.ext     List of all directories in conference for users
  1545.      DORnnn.ext     List of all doors in conference for users
  1546.      TXTnnn.ext     List of all text files in conference for users
  1547.                     (These files are optional; XHost will generate its
  1548.                     own list if they are not found.)
  1549.      nnn.DIR        File directories for conference nnn
  1550.      nnn.DOR        Doors for conference nnn
  1551.      nnn.TXT        Bulletins for conference nnn
  1552.      nnn.MSG        Message data file for conference nnn
  1553.      nnn.IDX        Message index file for conference nnn
  1554.  
  1555.  
  1556.      in Telix dir:
  1557.      ÕÕÕÕÕÕÕÕÕÕÕÕÕ
  1558.  
  1559.      XHOST.LOG      Log file
  1560.      USERS.DAT      User data file
  1561.  
  1562.      in File Directories:
  1563.      ÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕÕ
  1564.  
  1565.      FILES.LST      File list (unless disabled in Setup)
  1566.  
  1567.      Others:
  1568.      ÕÕÕÕÕÕÕ
  1569.  
  1570.      SHELL.BAT      Batch file used to call DOS shell
  1571.      XH$$$.TMP      Temporary file used for various tasks
  1572.      EXTRACT.arc    Archive containing user extracts (in dir #2)
  1573.                     The default archiver is used to create it.
  1574.